As the amount of data created and collected has increased, the data access landscape has changed. The number and types of data sources has increased rapidly. This has resulted in a rapid increase in the number of Application Program Interfaces (APIs) for providing access to data stored in such sources. Additionally, the average number of data sources a user interacts with, sometimes when using a single application, is also increasing. Due in part to these developments, data source connectivity is increasingly important.
A problem is that costs and complexity of an application increase with the number of data sources used. Current systems may require an application to use multiple separate APIs and drivers to provide connectivity to multiple data sources; however, such point-to-point connectivity is brittle, uses many APIs, and the APIs may change quickly (which may make maintenance too costly). Present systems, therefore, fail to provide connectivity to multiple data sources that is relatively inexpensive, robust and easily maintained. Further present systems fail to provide a single driver that plugs into any third-party application suite to provide connectivity to any number of data sources. Additionally, present systems fail to provide SQL access to a broad spectrum of data sources through a cloud-based connectivity service.